static void
gtk_box_gadget_distribute (GtkBoxGadget *gadget,
+ gint for_size,
gint size,
GtkRequestedSize *sizes)
{
gtk_box_gadget_measure_child (child->object,
priv->orientation,
- -1,
+ for_size,
&sizes[i].minimum_size, &sizes[i].natural_size,
NULL, NULL);
if (gtk_box_gadget_child_is_visible (child->object) &&
size -= size / n_expand;
n_expand--;
}
+
}
static void
if (for_size >= 0)
{
sizes = g_newa (GtkRequestedSize, priv->children->len);
- gtk_box_gadget_distribute (GTK_BOX_GADGET (gadget), for_size, sizes);
+ gtk_box_gadget_distribute (GTK_BOX_GADGET (gadget), -1, for_size, sizes);
}
above_min = below_min = above_nat = below_nat = -1;
if (priv->orientation == GTK_ORIENTATION_HORIZONTAL)
{
- gtk_box_gadget_distribute (GTK_BOX_GADGET (gadget), allocation->width, sizes);
+ gtk_box_gadget_distribute (GTK_BOX_GADGET (gadget), allocation->height, allocation->width, sizes);
if (baseline < 0)
{
}
else
{
- gtk_box_gadget_distribute (GTK_BOX_GADGET (gadget), allocation->height, sizes);
+ gtk_box_gadget_distribute (GTK_BOX_GADGET (gadget), allocation->width, allocation->height, sizes);
for (i = 0 ; i < priv->children->len; i++)
{